package com.beifu.manager.service.assetscrap;

import java.util.List;
import java.util.Map;

import com.beifu.manager.api.domain.scrap.ScrapDetailResponse;
import com.beifu.manager.api.domain.scrap.ScrapListResponse;
import com.beifu.manager.api.domain.scrap.ScrapProduct;
import com.beifu.manager.model.AssetScrap;
import com.beifu.manager.model.AssetScrapDetail;
import com.mds.manager.utils.PageUtils;

public interface AssetScrapService {
/**
 * 获取报废单列表
 * @param page
 * @return
 */
	PageUtils getAssetScrapList(PageUtils page);
/**
 * 获取报废单列表
 * @param id
 * @return
 */
	AssetScrap getAssetScrapDetail(String id);
	/**
	 * 通过报废审核
	 * @param id
	 * @return 
	 */
	Map<String, Object> approveAssetsScrap(String id);
	/**
	 * 获取报废单列表table部分数据
	 * @param page
	 * @return
	 */
	PageUtils getScrapDetailTable(PageUtils page);
	/**
	 * 报废单驳回
	 * @param id
	 * @param refuseReason 
	 * @return 
	 */
	Map<String, Object> refuseAssetsScrap(String id, String refuseReason);
	/**
	 * app报废单列表
	 * @param pageIndex
	 * @param pageNumber
	 * @return
	 */
	List<ScrapListResponse> getScrapList(String pageIndex, String pageNumber,String userId);
	/**
	 * 前端展示报废单详情
	 * @param id
	 * @return
	 */
	ScrapDetailResponse getScrapDetail(String id);
	/**
	 * 保存报废单及报废单详情
	 * @param assetScrap
	 * @param scrapList
	 * @param devID 
	 */
	void saveAssetScrap(AssetScrap assetScrap, List<ScrapProduct> scrapList, String devID);
	/**
	 * 更据报废单id更新报废单状态
	 * @param scrapId
	 * @param scrapList
	 */
	void saveAssetScrap(String scrapId, List<ScrapProduct> scrapList);

	/**
	 * 通过报废单id 获取报废单详情列表
	 * @param scrapId
	 * @return
	 */
	List<AssetScrapDetail> getAssetScrapRFIDs(String scrapId);
}
